With more and more applications of computer key services, the requirement of computer system reliability is increasingly higher. Especially in the field with a high requirement on data reliability such as the economy and finance, once an error occurs in a processing program or stored information, inestimable loss may be caused. Therefore, it is important to improve the reliability of the program and the stored information.
Two solutions for detecting data reliability exist in the prior art. The first manner is storing two duplicates of a process code segment in a physical memory, dividing the process code segment into memory areas with a fixed size, and based on a dividing result, starting a corresponding number of kernel threads as a consistency maintenance thread to maintain the consistency between a process code segment area and a duplicate. If it is found that a program code segment is erroneous, recovering is performed. The second manner is setting a breakpoint for the data in advance, and when it is found that the data is erroneous, rolling back to the preset breakpoint or reloading the data, and restarting the program.
In the implementation of the present invention, the inventors find that the prior art at least has the following problems:
When the first manner is used, the possibility that an error occurs again to a data block having an error is large, so the reliability needs to be continuously compared twice on the basis of byte to determine whether the data is reliable, and the number of kernel threads maintaining the reliability is the same as the number of the data blocks, so too many kernel threads exist, thereby increasing the overhead of the system, and being inconvenient for system management. When the second manner is used, program reset wastes the system time, increases the overhead of the system, and in some application scenarios, the program reset is forbidden to happen because it results in great influence on the service.